"""
日志相关代码
"""


import logging.handlers

# 获取项目目录为“根”目录


# 定义 初始化日志代码 相关函数
from config import Base_Dir


def init_log_config():
    # 创建日志器对象
    logger = logging.getLogger()

    # 设置日志级别 -- 大于info级别，都写入 日志文件
    logger.setLevel(logging.INFO)

    # 创建日志处理器对象（控制台）
    console_handler = logging.StreamHandler()

    # 创建日志处理器对象（日志文件）
    file_path = Base_Dir + '/log/ihrm.log'
    file_handler = logging.handlers.TimedRotatingFileHandler(file_path,
            when='midnight',interval=1, backupCount=2,encoding='UTF-8')

    # 创建格式化器 - () 里面的 关键字 千万别写错！
    fmt_str = '%(asctime)s %(levelname)s [%(name)s] [%(filename)s(%(funcName)s:%(lineno)d)] - %(message)s'
    fmt = logging.Formatter(fmt_str)

    # 设置使用格式化器
    console_handler.setFormatter(fmt)
    file_handler.setFormatter(fmt)

    # 添加到日志中
    logger.addHandler(console_handler)
    logger.addHandler(file_handler)

if __name__ == '__main__':
    init_log_config()
    logging.info('普通信息')
    logging.error('错误信息')